Method and system for determining a direction of movement of an object

ABSTRACT

According to an example aspect of the present invention, there is provided a method for determining the direction of movement of an object, the method comprising determining a cyclical motion of a cyclically moving part of the object by recording acceleration data of said cyclically moving part over a plurality of cycles using an accelerometer or inertial sensor attached to said cyclically moving part, integrating said acceleration data over at least one cycle of movement to determine a tilting of said cyclically moving part of the object relative to the horizontal plane, measuring an external magnetic field of said cyclically moving part of the object using a magnetometer to determine an orientation of said cyclically moving part of the object relative to the external magnetic field, determining the direction of movement of the object based on the tilting and the orientation of the cyclically moving part of the object.

FIELD

The present invention relates to a method for determining a direction ofmovement of an object.

Further, the present invention relates to a system for determining adirection of movement of an object.

Furthermore, the present invention relates to a non-transitory computerreadable medium.

In particular, embodiments of the present invention relate to sensortechnology in mobile devices, i.e. more specifically to processing ofinformation provided by a multitude of sensors. The inventionparticularly relates to improving the accuracy of a position indicationmeasured with the aid of a mobile device or system. The mobile devicemay be, for example, a wristop computer, a mobile telephone or any otherportable device.

BACKGROUND

The signal from a GPS (Global Positioning System) sensor or othersatellite-based navigation system located in a device carried by aperson on the wrist or elsewhere on the body, has a very small biaserror, i.e. a systematic error, but contains a great deal of noise. At ameasurement frequency of 1 Hz with the person walking or running, thenoise in a purely GPS-based speed measurement can be in the order of20-30%, compared to the pure GPS signal.

Direction or speed data measured and estimated from sensors carrieddirectly on the body of a person, contains usually less noise. However,large bias errors may be present in these measurement signals.

Sensor fusion means that first and second sensors may be based ondifferent operating principles, but they are measuring the same physicalvariable. For example, horizontal speed can be measured using asatellite-positioning sensor or an acceleration sensor. Sensors that canbe used in sensor fusion may be, for example, a GPS sensor, amagnetometer (compass), and acceleration sensors. With such sensors, theacceleration, speed and direction of a moving object may be measured anddisplayed on a mobile device, for example on the display of a wristopcomputer, a mobile telephone or any other portable device.

It is known from GB 2497153 to measure first and second physicalvariables with first and second sensors respectively, and to determinean estimate of a target variable by measuring a first physical variable.An error estimate is determined by measuring a second physical variable,and the estimate of the target variable is filtered with a strength thatdepends on the error estimate. However, during a loss of satellitesignals, as may be the case in shadow areas such as in tunnels,backyards and mountain areas, where only a weak or non-detectablepositioning signal strength exists, a satellite-based measurement maynot be available at all.

Therefore, there is a need for a method and system capable ofdetermining the direction of movement of an object. The method andsystem should be, for example, usable for a positioning system thatdelivers accurate and uninterrupted position data and other dataderivable therefrom. In view of the foregoing, it would be beneficial toprovide a method and a system capable of determining the direction ofmovement of an object comprising a first part and a second part which iscyclically moving relative to the first part, in which method and systemthe battery consumption can be reduced. It would be also beneficial toprovide a method and system capable of providing uninterrupted positiondata and other data derivable therefrom.

SUMMARY OF THE INVENTION

The invention is defined by the features of the independent claims. Somespecific embodiments are defined in the dependent claims.

Certain embodiments of the present invention provide a new type ofmethod and system for determining direction of movement of an object aswell as positioning and navigation services in a mobile device, and acorresponding system. The object of certain embodiments of the inventionis particularly to complement GPS positioning services, or any otherpositioning service, for example wireless positioning services, visuallocation services, or a location given by a user, with positioninformation derived from other sensors, in varying movement and ambientconditions.

According to a first aspect of the present invention, there is provideda method for determining a direction of movement of an object, themethod comprising determining a cyclical motion of a cyclically movingpart of the object by recording acceleration data of said cyclicallymoving part over a plurality of cycles using an accelerometer orinertial sensor attached to said cyclically moving part, integratingsaid acceleration data over at least one cycle of movement to determinea tilting of said cyclically moving part of the object, determining acharacteristic position of the cyclically moving part in subsequentcycles, measuring an external magnetic field of said cyclically movingpart of the object using a magnetometer to determine an orientation ofsaid cyclically moving part of the object relative to the externalmagnetic field, determining the direction of movement of the objectbased on the tilting and the orientation of said cyclically moving partof the object.

Various embodiments of the first aspect may comprise at least onefeature from the following bulleted list:

-   -   a characteristic position of the cyclically moving part is        determined in subsequent cycles    -   the external magnetic field of said cyclically moving part is        measured in said characteristic position    -   the direction of movement of the object is determined based on a        previously determined direction of said object and the        orientation of the cyclically moving part of the object    -   the direction of movement of the object is determined based on a        previously determined direction of said object and a measured        geomagnetic orientation of the cyclically moving part of the        object    -   the previously determined direction of said moving object is        determined based on signals received from an external        positioning system    -   the previously determined direction of said moving object is        determined based on GPS signals measured at two separate points        of time    -   a first direction of a moving first part of the object is        determined based on signals received from an external        positioning system, acceleration data of a second part of the        object is recorded, which second part is cyclically moving        relative to the first part of the object, over a plurality of        cycles using an accelerometer or inertial sensor attached to the        second part of the object, said acceleration data is integrated        over at least one cycle of movement to determine the tilting of        said cyclically moving part of the object relative to the        horizontal plane, a characteristic position of the cyclically        moving second part of the object is determined in subsequent        cycles, a geomagnetic first orientation of the second part of        the object is measured in said characteristic position using a        magnetometer, a second direction of movement of the first part        of the object is determined by measuring a geomagnetic second        orientation of the second part of the object in said        characteristic position using a magnetometer, and wherein the        determination is based on the tilting and the deviation between        the geomagnetic first orientation and the geomagnetic second        orientation of the second part of the object    -   at least one of the first direction, the second direction, an        acceleration, a velocity, and a position of the first part of        the moving object is tracked    -   at least one of a first angle between the geomagnetic first        orientation of the second part of the object and the first        direction of the first part of the object and a second angle        between the geomagnetic first orientation and the geomagnetic        second orientation of the second part of the object is        determined    -   a third angle between the geomagnetic second orientation of the        second part of the object and the second direction of the first        part of the object is identical with the first angle    -   a position of the first part of the object is determined with        the combined use of the external positioning system to determine        the first direction of the first part of the object, the        accelerometer or inertial sensor to determine the acceleration        data, the magnetometer to determine the first orientation and        the second orientation of the second part of the object, and a        timing function used to record the time the object has moved in        any direction    -   the time the object has moved in any direction is recorded by a        timing function    -   the tilting of the accelerometer or inertial sensor is        determined using the formula        ∫_(C) {right arrow over (ã)}=∫ _(C) {right arrow over (a)}+∫        _(C)ƒ({right arrow over (g)})≈{right arrow over (0)}+{right        arrow over (O)}·Δt,        wherein {right arrow over (a)} is the acceleration of the second        part, {right arrow over (g)} is the gravity in global        coordinates, {right arrow over (O)} is the tilt, and t is the        time    -   air pressure is measured by means of an air pressure sensor and        an altitude of said object is determined based on the air        pressure    -   a position of the moving object is displayed on a display of a        system, transmitted from the system to another device, or shown        on a map which is available via internet    -   the position is an indoor or an outdoor position    -   the position is determined in real time or at a later stage    -   the characteristic position of each cycle is at a maximum or        minimum acceleration value    -   a track formed in a first coordinate system is aligned with a        second coordinate system

According to a second aspect of the present invention, there is provideda system for determining a direction of movement of an object, thesystem comprising a receiver for receiving signals from an externalpositioning system, at least one of an accelerometer or an inertialsensor, a magnetometer, at least one memory unit, and a processing unitcomprising at least one processing core, at least one memory includingcomputer program code, the at least one memory and the computer programcode being configured to, with the at least one processing core, causethe system at least to determine a cyclical motion of a cyclicallymoving part of the object by recording acceleration data of saidcyclically moving part over a plurality of cycles using an accelerometeror inertial sensor attached to said cyclically moving part, integratesaid acceleration data over at least one cycle of movement to determinea tilting of said cyclically moving part of the object relative to ahorizontal plane, measure an external magnetic field of said cyclicallymoving part of the object using a magnetometer to determine anorientation of said cyclically moving part of the object relative to theexternal magnetic field, determine the direction of movement of theobject based on the tilting and the orientation of the cyclically movingpart of the object.

Various embodiments of the second aspect may comprise at least onefeature from the following bulleted list:

-   -   the system is configured to determine a characteristic position        of the cyclically moving part in subsequent cycles    -   the system is configured to measure the external magnetic field        of the cyclically moving part in said characteristic position    -   the system is configured to determine the direction of movement        of the object based on a previously determined direction of said        object and the orientation of the cyclically moving part of the        object    -   the system is configured to determine the direction of movement        of the object based on a previously determined direction of said        object and a measured geomagnetic orientation of the cyclically        moving part of the object    -   the system is configured to determine the previously determined        direction of said moving object based on signals received from        an external positioning system    -   the system is configured to determine the previously determined        direction of said moving object based on GPS signals measured at        two separate points of time    -   the processing unit comprising the at least one processing core,        the at least one memory including computer program code, the at        least one memory and the computer program code is further        configured to, with the at least one processing core, cause the        system at least to determine a first direction of a moving first        part of the object based on signals received from an external        positioning system, record acceleration data of a second part of        the object, which second part is cyclically moving relative to        the first part of the object, over a plurality of cycles using        an accelerometer or inertial sensor attached to the second part        of the object, integrate said acceleration data over at least        one cycle of movement to determine a tilting of said cyclically        moving part of the object relative to a horizontal plane,        determine a characteristic position in subsequent cycles,        measure an external magnetic field of the second part of the        object in a characteristic position of subsequent cycles using a        magnetometer, measure a geomagnetic second orientation of the        second part of the object in the characteristic position of each        cycle using the magnetometer, determine a second direction of        the first part of the moving object based on the tilting and a        deviation between the geomagnetic first orientation and the        geomagnetic second orientation of the second part of the object    -   the processing unit is continuously computing and storing at        least one of the first direction, the second direction, an        acceleration, a velocity, and a position of the first part of        the moving object    -   the system is configured to determine the first direction of the        first part of the object based on GPS signals between two        separate points of time    -   the system is configured to track at least one of the first        direction, the second direction, an acceleration, a velocity and        a position of the first part of the moving object    -   the system is configured to determine at least one of a first        angle between the geomagnetic first orientation of the second        part of the object and the first direction of the first part of        the object and a second angle between the geomagnetic first        orientation and the geomagnetic second orientation of the second        part of the object    -   the system is configured to determine a position of the first        part of the object with the combined use of the external        positioning system to determine the first direction of the first        part of the object, the accelerometer or inertial sensor to        determine the acceleration data, the magnetometer to determine        the first orientation and the second orientation of the second        part of the object, and a timing function used to record the        time the object has moved in any direction    -   the system is configured to record the time the object has moved        in any direction by a timing function    -   the system is configured to determine the tilting of the        accelerometer or inertial sensor using the formula        ∫_(C){right arrow over (ã)}=∫_(C) {right arrow over (a)}+∫        _(C)ƒ({right arrow over (g)})≈{right arrow over (0)}+{right        arrow over (O)}·Δt,    -   wherein {right arrow over (a)} is the acceleration of the second        part, {right arrow over (g)} is the gravity in global        coordinates, {right arrow over (O)} is the tilt, and t is the        time    -   the system further comprises an air pressure sensor    -   the system is configured to display a position of the moving        object on a display of the system, to transmit the position of        the moving object from the system to another device, or to show        the position of the moving object on a map which is available        via internet    -   the system is configured to track an indoor or an outdoor        position of the moving object    -   the system is configured to determine the position in real time        or at a later stage    -   the system further comprises a gyroscope    -   the system is configured to align a track formed in a first        coordinate system with a second coordinate system

According to a third aspect of the present invention, there is provideda non-transitory computer readable medium having stored thereon a set ofcomputer readable instructions that, when executed by at least oneprocessor, cause an apparatus to at least to determine a cyclical motionof a cyclically moving part of the object by recording acceleration dataof said cyclically moving part over a plurality of cycles using anaccelerometer or inertial sensor attached to said cyclically movingpart, integrate said acceleration data over at least one cycle ofmovement to determine a tilting of said cyclically moving part of theobject relative to a horizontal plane, measure an external magneticfield of said cyclically moving part of the object using a magnetometerto determine an orientation of said cyclically moving part of the objectrelative to the external magnetic field, determine the direction ofmovement of the object based on the tilting and the orientation of thecyclically moving part of the object.

Various embodiments of the third aspect may comprise at least onefeature corresponding to a feature from the preceding bulleted list laidout in connection with the first aspect or second aspect.

Considerable advantages are obtained by certain embodiments of theinvention. A method and a system for determining the direction ofmovement of an object are provided. It is possible to track the positionof an object by means of the provided compass in the coordinate systemthe as described compass forms. The coordinate system can be alignedwith any other coordinate system, for example one can even afterwardsalign the track to a geographical track.

According to a certain embodiment, an external positioning system isonly required for calibration of a first direction into which the objectis moving. Subsequently, the position of the object can be calculatedbased on deviations between different orientations of a second part ofthe object in characteristic positions during cyclical motions of thesecond part of the object. The calibration may only be carried out onceor in certain time intervals, for example. Thus, battery consumption ofthe system in accordance with at least some embodiments of the presentinvention can be reduced, because the use of the external positioningsystem, for example a GPS positioning system, can be significantlyreduced.

The object may be, for example, a rowing boat or a bicycle. The objectmay be also a human running, swimming, or rowing a boat, for instance.The position of any object can be determined as long as a second part ofthe object is cyclically moving relative to a first part of the object,the motion evolves very slowly compared to the time it takes to completeone cycle, and the horizontal velocity of the object's centre of mass isconstant and the integral of vertical velocity is zero. Further, theinvention particularly relates to improving the accuracy of a positionindication measured with the aid of a mobile device or system. Themobile device may be, for example, a wristop computer, a mobiletelephone or any other portable device.

Further, during loss of satellite signals, as may be e.g. the case inshadow areas such as in tunnels, in and between buildings, backyards,and mountain areas, where only a weak or non-detectable positioningsignal strength exists and a satellite-based measurement is notpossible, a positioning method and system that delivers accurate anduninterrupted position data and other data derivable therefrom, underall circumstances, is provided.

Direction data, velocity data, and position indication data and otherdata derivable therefrom may be provided in real time and/or at a laterstage. The direction data, velocity data, and the position indicationdata and other data derivable therefrom may be visualized on a displayof the system in accordance with at least some embodiments of thepresent invention, on another device, or in the internet.

The data may be e.g. used to calculate and/or monitor the covereddistance or for safety reasons. A runner may want to know the covereddistance during an exercise session in real time and/or at a laterstage. Further, a person walking cross country may have the desire toknow the real time location in case of an accident, for instance. Inboth cases, the method and system in accordance with at least someembodiments of the present invention can provide accurate anduninterrupted position data.

Further, an indoor position may be calculated by means of certainembodiments of the present invention. The position in a tunnel or inanother building such as a sports stadium, where an external positioningsignal is not available or the quality of the signal is not sufficient,may be calculated, for instance. The calculated position indication maybe, for example, used in case of emergency. The calculated positionindication may be, for example, transmitted to a server or by means of asmartphone app to an emergency doctor or other emergency forces, thusimproving safety of a user.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a schematic view of an example of determination of adirection of movement of an object in accordance with at least someembodiments of the present invention,

FIG. 2 illustrates a time-acceleration-diagram,

FIG. 3 illustrates a time-direction of movement-diagram,

FIG. 4 illustrates a diagram with geometric paths tracked usingdifferent methods,

FIG. 5 illustrates another schematic view of an example of determinationof a direction of movement of an object in accordance with at least someembodiments of the present invention,

FIG. 6 illustrates a satellite system and a system in accordance with atleast some embodiments of the present invention,

FIG. 7 illustrates a schematic view of an example of outdoor positiondetermination,

FIG. 8 illustrates a schematic view of another example of outdoorposition determination,

FIG. 9 illustrates a schematic view of an example of indoor positiondetermination,

FIG. 10 illustrates a schematic view of another example of positiondetermination, and

FIG. 11 illustrates an example of a system in accordance with at leastsome embodiments of the present invention.

EMBODIMENTS

In FIG. 1 a schematic view of an example of determination of a directionof movement of an object in accordance with at least some embodiments ofthe present invention is illustrated. A person 2 carrying a system 1 inaccordance with certain embodiments of the present invention is about torun along a track T. The system 1 may be a wristop computer which isattached to the right arm of the person 2, for instance.

It is further relied on the observation that running is a cyclicalmotion. With cycle it is meant that a back and forth movement is made byan arm of a runner or a step pair. Throughout this document, thefollowing assumptions are made:

1. A runner's running form evolves very slowly compared to the time ittakes to complete one cycle, and

2. The horizontal velocity of the runner's centre of mass is constantand the integral of vertical velocity is zero.

These assumptions mean that the runner's wrist, or any other part of thebody, is in the same orientation at the end of the cycle as at thebeginning of the cycle.

In general, the forearm of a runner is not pointing to the direction ofmovement of the runner. When running, the arms of the person 2 movecyclically in relation to the body of the person 2. The cyclical motion6 may be angular or linear, for example. In other words, a first part ofthe person 20 moves into a first direction 3 and a second part of theperson 20 moves cyclically relative to the first part of the person 20.The term cyclically motion means that a motion is repeated in specifictime intervals.

For reasons of calibration of the system 1, the first direction 3 of thefirst part of the person 2, i.e. the body of the person 2, is determinedbased on signals received from an external positioning system. Forexample, the first direction 3 of the first part of the person 2 isdetermined based on GPS signals between two separate points P1, P2. Inthe example shown in FIG. 1, the first direction 3 is orientated towardsNorth.

Between the first point P1 and the second point P2 acceleration data ofthe second part of the person 2, i.e. at the position where the system 1is attached to the arm of the person 2, is recorded over a plurality ofcycles using an accelerometer or inertial sensor. The accelerometer orinertial sensor is attached to the second part of the person 2, i.e. tothe right arm of the person 2. As the accelerometer or inertial sensoris comprised by the wristop computer, acceleration data is recorded atthe position of the wristop computer. An accelerometer samplingfrequency may be, for example, 104 Hz. In other words, the accelerationof the body, i.e. data from which a velocity and a position of theperson 2 can be derived, and the acceleration of the arm to which thewristop computer is attached to are different due to the cyclical motionof the arms of the person 2.

A characteristic position can be determined in subsequent cycles of thecyclic motion. The characteristic position of each cycle may be at amaximum or minimum acceleration value, for example. One way to determinethe cycles is to consider total acceleration and to count the peakswhich correspond to the step. Then every second step, or a peak,completes a cycle. Also an adaptive peak finding algorithm may be used,for instance. An n-second sliding window is provided to calculate a meanand standard deviation. A maximum value is accepted after the signaldrops below the mean minus a coefficient times standard deviation.

When integrating the acceleration data over the full cycles, the dynamicacceleration, i.e. the motion of the arm in relation to the body,integrates to zero. Only the gravity multiplied with the cycle durationfor each axis respectively is left. In other words, an error caused bythe acceleration of the arm relative to the body can be eliminated byintegrating the acceleration data over the full cycles and anorientation of the accelerometer 13 or inertial sensor relative to ahorizontal plane can be determined.

The orientation of the accelerometer 13 or inertial sensor relative tothe horizontal plane, i.e. the tilting, can be determined or estimatedin the characteristic position of each cycle. The tilt of theaccelerometer can be e.g. determined or estimated using the formula∫_(C) {right arrow over (ã)}=∫ _(C) {right arrow over (a)}+∫_(C)ƒ({right arrow over (g)})≈{right arrow over (0)}+{right arrow over(O)}·Δt,

-   -   wherein {right arrow over (a)} is the acceleration of the second        part of the person 2, {right arrow over (g)} is the gravity in        global coordinates, {right arrow over (O)} is the tilt, and t is        the time.

Additionally, an external magnetic field is measured using amagnetometer in order to determine orientation(s) of the cyclicallymoving part of the object 2 relative to the external magnetic field. Forexample, a geomagnetic first orientation of the second part of theperson 2 in the characteristic position of each cycle, i.e. a heading,is determined using the magnetometer. The sampling frequency of themagnetometer may be, for example, 10 Hz. Subsequently, a first anglebetween the first orientation of the second part of the person 2 and thefirst direction 3 of the first part of the person can be determined.

Between the second point P2 and the third point P3 the person 2 ismoving into a second direction 4. In the example shown in FIG. 1, thesecond direction 4 is orientated towards East. Acceleration data isrecorded between points P1 and P2. Further, acceleration data isintegrated over the full cycles to determine the tilting of theaccelerometer 13 or inertial sensor relative to a horizontal plane.Furthermore, a characteristic position is determined in subsequentcycles. Additionally, a geomagnetic second orientation of the secondpart of the person 2 in the characteristic position of each cycle isdetermined using the magnetometer. The second direction 4 of the firstpart of the person 2 can now be determined based on the tilting and thedeviation between the geomagnetic first orientation and the geomagneticsecond orientation of the second part of the person. A second anglebetween the geomagnetic first orientation and the geomagnetic secondorientation of the second part of the person 2 can be determined. Athird angle between the geomagnetic second orientation of the secondpart of the person 2 and the second direction 4 of the first part of theperson 2 is identical with the first angle, and thus the seconddirection 4 can be determined based on the deviation between thegeomagnetic first orientation and the geomagnetic second orientation ofthe second part of the person 2. In other words, the deviation betweenthe geomagnetic first orientation and the geomagnetic second orientationof the second part of the person 2 is identical with the deviationbetween the first direction 3 and the second direction 4 of the person2.

Between the third point P3 and the fourth point P4 the person 2 ismoving into a third direction 5. In the example shown in FIG. 1, thethird direction 5 is orientated towards South. Acceleration data isrecorded between points P3 and P4. Further, acceleration data isintegrated over the full cycles to determine the tilting of theaccelerometer 13 or inertial sensor relative to a horizontal plane.Furthermore, a characteristic position is determined. Additionally, ageomagnetic third orientation of the second part of the person 2 in thecharacteristic position of each cycle is determined using themagnetometer. The third direction 5 of the first part of the person 2can now be determined based on the deviation between the geomagneticsecond orientation and the geomagnetic third orientation of the secondpart of the person. A second angle between the geomagnetic secondorientation and the geomagnetic third orientation of the second part ofthe person can be determined. A third angle between the geomagneticthird orientation of the second part of the person and the thirddirection 5 of the first part of the person is identical with the firstangle, and thus the third direction 5 can be determined based on thetilting and the deviation between the geomagnetic second orientation andthe geomagnetic third orientation of the second part of the person 2. Inother words, the deviation between the geomagnetic second orientationand the geomagnetic third orientation of the second part of the person 2is identical with the deviation between the second direction 4 and thethird direction 5 of the person 2.

According to certain embodiments, each direction 3, 4, 5 and thevelocity of the first part of the moving person 2 can be tracked, andthus a position of the person can be calculated. The position of thefirst part of the person 2 is determined with the combined use ofdifferent systems. An external positioning system is used to determinethe first direction 3 of the first part of the person 2, i.e. forreasons of calibration. An accelerometer or inertial sensor is used todetermine the acceleration data. A magnetometer is used to measure thegeomagnetic first orientation, the geomagnetic second orientation, andany further geomagnetic orientation of the second part of the person 2.A timing function is further used to record the time the object hasmoved in any direction 3, 4, 5. A tracked position of the first part ofthe person 2 can be displayed on a display of the system, transmittedfrom the system to another device, or shown on a map which is availablevia internet. The tracked position may be an indoor or an outdoorposition. The tracked position may be determined in real time or at alater stage.

Battery consumption of the system 1 in accordance with at least someembodiments of the present invention can be reduced, because the use ofthe external positioning system, for example a GPS positioning system,can be significantly reduced. According to certain embodiments, theexternal positioning system is used only for calibration of the system1. According to certain embodiments, the external calibration system isused in certain time intervals, for example every 30 seconds or every 60seconds. According to certain embodiments, the external positioningsystem is used to constantly calibrate the system 1. According tocertain embodiments, the external positioning system is used when thesignal strength exceeds a threshold value.

In FIG. 2 a time-acceleration-diagram is illustrated. Acceleration dataof the second part of the person 2 as illustrated in FIG. 1, whichsecond part is cyclically moving relative to the first part of theperson 2, is recorded over a plurality of cycles using an accelerometeror inertial sensor attached to the second part of the person 2. Acharacteristic position can be determined based on the acceleration datain subsequent cycles. For each cycle the characteristic position may be,for example, the position of the second part of the person 2, where amaximum acceleration value, i.e. a peak, is measured by means of anaccelerometer or inertial sensor. When integrating the acceleration dataover the full cycles, the dynamic acceleration, i.e. the motion of thesecond part in relation to the first part of the person 2, integrates tozero and the tilting of the accelerometer 13 or inertial sensor relativeto a horizontal plane can be determined. An external magnetic field canfurther be measured using a magnetometer in order to determine anorientation of the cyclically moving part relative to the externalmagnetic field. The geomagnetic orientation of the second part of theperson 2 can be determined using the magnetometer attached to the secondpart of the person 2, for instance.

Another geomagnetic orientation of the second part of the person can bedetermined in the characteristic position after changing the directionof the first part of the person from a first direction 3 to a seconddirection 4, and thus the second direction 4 of movement of the firstpart of the person 2 can be determined based on the deviation betweenthe geomagnetic first orientation and the geomagnetic second orientationof the second part of the person 2.

In FIG. 3 a time-direction of movement-diagram is illustrated. Thedirection of movement of a runner is shown over time using differentmethods for determining a direction of movement of an object. Thedirection of movement is computed based on a method using a GPSpositioning system known in the art (marked as “gps heading”), a methodfor determining the direction of movement of an object in accordancewith at least one embodiment of the present invention (marked as“heading”) as well as a method for determining the direction of movementof an object in accordance with at least one embodiment of the presentinvention, wherein certain errors have been corrected (marked as“corrected heading”).

On top of the constant offset caused by the misalignment of the lowerarm of a runner compared to the direction of movement of the runner,there are other error sources such as misalignment of the magnetometerand accelerometer axes, calibration offsets and integration errors. Thecombined effect of all these errors is that the difference between trueand estimated error is heading dependent. This can be modelled, forexample, asθ_(est.)−θ_(true)=cos(θ_(est.)+α)·β+γ.These parameters can be calibrated when reference directions areavailable.

It can be seen that the deviation of the direction of movementdetermined with the method for determining the direction of movement ofan object in accordance with at least one embodiment of the presentinvention, wherein certain errors have been corrected, from the GPSbased direction of movement appears to be very small.

Thus, the method for determining the direction of movement of an objectin accordance with at least one embodiment of the present inventionprovides sufficient precision for determining the direction of movementof an object. In particular, after calibration of a system in accordancewith at least some embodiments of the invention, the system can be e.g.used in shadow areas as further described in connection with FIGS. 7-10.

In FIG. 4 a diagram with geometric paths tracked using different methodsis illustrated. The geometric path is computed based on a method using aGPS positioning system known in the art (marked as “gps”), a method fordetermining the direction of movement of an object in accordance with atleast one embodiment of the present invention (marked as “original”) aswell as a method for determining the direction of movement of an objectin accordance with at least one embodiment of the present invention,wherein correction of errors as described above in connection with FIG.3 has taken place (marked as “corrected”).

It is possible to track the position of an object by means of theprovided compass-system in the coordinate system the as describedcompass forms. Such a coordinate system is, for example, shown in FIG.4. A track formed in such a first coordinate system can be aligned witha second coordinate system, for example a geographical coordinatesystem, and thus a track can be shown in connection with a map. One caneven afterwards align the track to a geographical track by calibratingthe coordinate system the as described compass has formed.

Thus, the method for determining the direction of movement of an objectin accordance with at least one embodiment of the present inventionprovides sufficient precision for determining the geometric path of anobject and/or determining the position of the object. In particular,after calibration of a system in accordance with at least someembodiments of the invention, the system can be e.g. used in shadowareas as further described in connection with FIGS. 7-10.

In FIG. 5 another schematic view of an example of determination of adirection of movement of an object in accordance with at least someembodiments of the present invention is illustrated. When a person isrowing a rowing boat 2, the arms of the person move cyclically inrelation to the body of the person. On the other side, also the bladesof the oars move cyclically in relation to the hull of the rowing boat2. Consequently, a system in accordance with at least some embodimentsof the invention can be either attached to an arm of the person or beattached to or integrated with the blade of an oar. In the first case, adirection of movement of the person can be determined. In the lattercase, a direction of movement of the rowing boat 2 can be determined. Inother words, the term object in this document has to be understood as aperson, an animal or any other three dimensional body.

The direction of movement can be determined by determining a cyclicalmotion of a cyclically moving part of the object 2 by recordingacceleration data of said cyclically moving part over a plurality ofcycles using an accelerometer 13 or inertial sensor attached to saidcyclically moving part, integrating said acceleration data over at leastone cycle of movement to determine a tilting of the cyclically movingpart of the object 2 relative to a horizontal plane, measuring anexternal magnetic field of said cyclically moving part of the object 2using a magnetometer 12 to determine an orientation of said cyclicallymoving part of the object 2 relative to the external magnetic field, anddetermining the direction of movement of the object 2 based on thetilting and the orientation of the cyclically moving part of the object2.

The direction 3 of movement remains constant as long as the orientationof said cyclically moving part of the object 2 remains constant orsubstantially constant. Changes in the orientation indicate that eitherthe cyclic motion has changed or that the direction of movement haschanged. Changes in the cyclic motion may be, for example, detected bychanges in the tilting.

It is possible to track the position of an object by means of theprovided compass-system in the coordinate system the as describedcompass forms. A reference system can be used to either calibrate thecalculated direction if the cyclical movement happens in some anglerelative to the direction of movement of the object or to calibrate thedirection if a local magnetic field is not pointing to the samedirection as the reference system, for example, because of a magneticdeclination. Of course, the reference system can also be used tocalibrate the calculated direction if the cyclical movement happens insome angle relative to the direction of movement of the object and if alocal magnetic field is not pointing to the same direction as thereference system.

The position of the object can be tracked in a coordinate system basedon the orientation only. However, in case that the coordinate systemshould be aligned with a geographical coordinate system, the directionof movement of the object 2 is determined based on a previouslydetermined direction 3 of said object 2 and the orientation of thecyclically moving part of the object 2. The previously determineddirection 3 may be, for example, determined using an externalpositioning system 10 such as a GPS system.

In FIG. 6 a schematic view of a satellite system and a system inaccordance with at least some embodiments of the present invention isillustrated. A schematic view of a satellite 10 is shown, which may be aGPS satellite, for example. A system 1 is according to the inventionequipped both with a magnetometer 12 and acceleration sensor(s) 13. Thesystem 1 may be, for example, the system described in connection withFIG. 1.

A primary position indication of the system 1 is determined based onsignals 14 received from the external positioning system 10. From thesesignals 14 also a first direction of movement of the person can bedetermined.

The geomagnetic orientation of the system 1 can be calculated based onthe accelerometer sensor 13 signals by integrating measured accelerationdata over a selected period of time to determine a tilting of saidcyclically moving part of the object 2 relative to a horizontal planeand by measuring an external magnetic field of the cyclically movingpart in a characteristic position to determine an orientation of saidcyclically moving part relative to the external magnetic field. If themovement is rhythmic or cyclic, which it almost always is when a personis carrying the device, any further direction of the person may beobtained from the geomagnetic orientation of the system 1.

Velocity data may then be computed, for example based on the same ordifferent accelerometer sensor 13 signals or any other speed sensor,wheel sensor, tachometer, impeller or pitot tube, and a secondaryposition indication of the system may be obtained based on a knownprevious position, direction data, velocity data, and a timing function.The secondary position indication may then be used instead of theprimary position indication to determine the position of the system 1 ifthe quality or availability of the satellite signal falls below apredetermined threshold value.

In FIG. 7 a schematic view of an example of outdoor positiondetermination is illustrated. A person 2 carrying a system 1 inaccordance with certain embodiments of the present invention is about torun or walk along a track T in a mountain area M1, M2. Because of themountains M1 and M2, the satellite positioning signals have shadow areasS1 and S2 along the track T, where the satellite signals are weak ornon-existing. Occasionally along the track T, satellite signal coverageis provided as indicated by radiation patterns C1, C2, C3.

At point P1, the system 1 loses contact with the satellite navigationsystem as it enters shadow area S1. S1 is then the last known “good”position, i.e. a primary position indication, based on the satellitenavigation system. The direction and velocity of the user 2 in theshadow area S1 is determined by the processing unit in the system bycomputing a primary position indication based on signals C1 from thesatellite system to determine the position of the user at point P1.

Between points P1 and P2, the processing unit of system 1 recordsmovement data of the user using sensor signals from the accelerometer(s)in the system, and calculates the direction of movement of the user 2based on the sensor signals as described, for example, in connectionwith FIG. 1. The processing unit records direction data of the user 2 ina memory unit in order to determine the current direction of the user 2.It also computes the velocity of the user 2 in each direction. Thedirection and velocity data is stored in the memory unit, in order totrack and store secondary position indications of the user along thetrack T computed as a distance from the last known position at P1. Thesystem 1 may then offer the second position of the user 2 at point P2,based on the secondary position indication at that point. Between pointP2 and P3, satellite coverage C2 is again provided, and the position ofthe user 2 becomes updated with a new primary position indication atpoint P2 based on signals C2 from the satellite system. When the user 2enters the shadow area S2 at point P3, the same procedure commences asin shadow area S1. At point P4, a primary position indication based onsignals C3 from the satellite system is again available.

For a runner running cross-country also the vertical z direction of therunner, i.e. the change in altitude, may be recorded in addition to anydirection in a horizontal plane. Recording of the vertical z directionmay be performed by using altitude data calculated from air pressuredata measured by means of an air pressure sensor, for instance. Mappingthis information onto a topographic map vs. time gives information ofthe ground speed and position of the runner.

In FIG. 8 a schematic view of another example of outdoor positiondetermination is illustrated. A person 2 carrying a system 1 inaccordance with certain embodiments of the present invention is about torun or walk along a track T in an urban area between differentbuildings. Because of the buildings, the satellite positioning signalshave shadow areas S1 and S2 along the track, where the satellite signalsare weak, non-existing, or ambiguous. Occasionally along the track T,satellite signal coverage is provided as indicated by radiation patternsC1, C2, C3, C4.

At point P1, the system 1 loses contact with the satellite navigationsystem as it enters shadow area S1. S1 is then the last known “good”position, i.e. a primary position indication, based on the satellitenavigation system. The direction and velocity of the user 2 in theshadow area S1 is determined by the processing unit in the system bycomputing a primary position indication based on signals C1 from thesatellite system to determine the position of the user at point P1.

Between points P1 and P2, the processing unit of system 1 recordsmovement data of the user using sensor signals from the accelerometer(s)in the system, and calculates the direction of movement of the userbased on the sensor signals as described, for example, in connectionwith FIG. 1. The processing unit records direction data of the user in amemory unit in order to determine the current direction of the user 2.It also computes the velocity of the user in each direction anddetermines the time the person has moved in any direction. The directionand velocity data is stored in the memory unit, in order to track andstore secondary position indications of the user 2 along the track Tcomputed as a distance from the last known position at P1. The system 1may then offer the second position of the user 2 at point P2, based onthe secondary position indication at that point. Between point P2 andP3, satellite coverage C2 is again provided, and the position of theuser becomes updated with a new primary position indication at point P2based on signals C2 from the satellite system.

When the user 2 enters the shadow area S2 at point P3, the satellitesignal C3 is reflected by the building H2, and thus the position of theperson is ambiguous. The processing unit of system 1 records movementdata of the user using sensor signals from the accelerometer(s) in thesystem, and calculates the direction of movement of the user 2 based onthe sensor signals as described, for example, in connection with FIG. 1.The processing unit records direction data of the user 2 in a memoryunit in order to determine the current direction of the user 2. It alsocomputes the velocity of the user in each direction and determines thetime the person has moved in any direction. The direction and velocitydata is stored in the memory unit, in order to track and store secondaryposition indications of the user 2 along the track T computed as adistance from the last known position at P3. At point P4, a primaryposition indication based on signals C4 from the satellite system isagain available.

A primary position indication may be determined within specific timeintervals, for example every 30 seconds or every minute, from theexternal positioning system. The quality of the signal of the externalpositioning system may also be determined within a specific timeinterval. The time interval for determining a primary positionindication and the time interval for determining the quality of thesignal of the external positioning system may be different or identical.The quality of the signal of the external positioning system may bedetermined based on the signal strength and/or availability, forinstance. If the signal strength is below a specific threshold value ora signal cannot be received at all from the external positioning system,the secondary position indication of the user 2 may be calculated.Calculation of the secondary position indication may also take placepermanently. The tracked secondary position indication may be alsodisplayed on a display of the system 1, for example in connection with amap.

In FIG. 9 a schematic view of an example of indoor positiondetermination is illustrated. A person 2 carrying a system 1 inaccordance with certain embodiments of the present invention is about torun or walk along a track T through a tunnel or tunnel system. Thetunnel has an entrance Entr and two separate exits E1, E2. Occasionallyalong the track T, satellite signal coverage is provided as indicated byradiation patterns C1, C2. Because of the tunnel, the satellitepositioning signals are lost between the entrance Entr of the tunnel atpoint P1 and the exit E1 of the tunnel at point P2.

The direction and velocity of the user 2 in the tunnel is determined bythe processing unit in the system by computing a primary positionindication based on signals C1 from the satellite system to determinethe position of the user at point P1.

Between points P1 and P2, the processing unit of system 21 recordsmovement data of the user using sensor signals from the accelerometer(s)in the system, and calculates the direction of movement of the userbased on the sensor signals as described, for example, in connectionwith FIG. 1. The processing unit records direction data of the user 2 ina memory unit in order to determine the current direction of the user 2.It also computes the velocity of the user 2 in each direction anddetermines the time the person has moved in any direction. The directionand velocity data is stored in the memory unit, in order to track andstore secondary position indications of the user 2 along the track Tcomputed as a distance from the last known position at P1. The system 1may then offer the second position of the user 2 at point P2, based onthe secondary position indication at that point. At point P2, satellitecoverage C2 is again provided, and the position of the user becomesupdated with a new primary position indication at point P2 based onsignals C2 from the satellite system. Thus, it is possible to calculateand/or monitor the position of the person within a tunnel or tunnelsystem. In particular, it is possible to calculate and/or monitor inwhich part of the tunnel or tunnel system the person 2 is located or hasbeen located.

As there is no satellite signal available along the track T betweenpoints P1 and P2, the secondary position indication of the person 2 maybe determined based on said primary position indication, said directiondata, and said velocity data within specific time intervals, forinstance. A time interval may be, for example, 1 second, 5 seconds, or10 seconds. In other words, as long as there is no satellite signalavailable between points P1 and P2, calculating and/or monitoring of thesecondary position indication may take place every second, for instance.Accordingly, secondary position indication data, velocity data, anddirection data may be stored every second in the memory of a system inaccordance with certain embodiments of the present invention. Accordingto certain embodiments of the present invention, secondary positionindication data, velocity data, and direction data may be in addition orinstead transmitted via a wireless connection to a server infrastructureor any other computing device. Of course, the data may be also read outat a later stage.

At least one of the secondary position indication data, velocity data,and direction data may be visualized on a display of the system inaccordance with some embodiments of the present invention. Inparticular, the secondary position indication data may be shown on a mapon the display of the system. The secondary position indication data maybe visualized in real time or at a later stage. According to certainembodiments, the tracked secondary position indication data may be shownon a map on a display of another device in real time or at a laterstage. According to certain other embodiments, the tracked secondaryposition indication data may be shown on a map, which is accessible viathe internet, in real time or at a later stage. Further, data derivablefrom at least one of the secondary position indication data, velocitydata, and direction data may be visualized on the display of the systemin accordance with some embodiments of the present invention, on anotherdevice, or in the internet. Of course, also data obtained or derivablefrom the primary indication data may be visualized on the display of thesystem in accordance with some embodiments of the present invention, onanother device, or in the internet.

Further, the two external positioning signals at points P1 and P2 can beused for calibrating at least one of the direction of movement, thecalculation of the secondary position indication and the sensors of thesystem 1. In general, any two or more external positioning signals canbe used for calibration. Calibration may take place permanently, i.e.also when the external positioning signal is available, or withinspecific time intervals, for instance. A permanent calibration of thecalculation of the secondary position indication between two differentexternal positioning signals is beneficial, because a well calibratedsystem is provided in case that an external positioning signal is notavailable or the quality of the signal is not sufficient. Thecalibration may be personalized. For example, a person may wear a system1 in accordance with some embodiments of the present invention in theform of a wrist watch. Different persons may move their arms differentlywhen walking or running, and thus different accelerations may bemeasured by the acceleration sensors, even when the persons walk or runwith identical velocity. Each system 1 may be calibrated differently dueto such different accelerations taking place. In other words,calibration of the system 1 may be personalized, in particular bypermanently calibrating the calculation of the secondary positionindication.

In the tunnel example of FIG. 9, the calculated secondary positionindication should be at point P2 identical with the new primary positionindication received from the external positioning system at point P2.Any deviation between the secondary position indication and the newprimary position indication can be used to calibrate multipleparameters. Independent parameters may be, for example, speed anddirection. A mathematical optimization algorithm may be used forcalibration of the multiple parameters. For example, the least-squaresmethod or the simplex method may be used. The mathematical procedurescan be used for finding the best-fitting curve to a given set of pointsby minimizing the sum of the squares of offsets of the points from thecurve, for instance. When applying such a so called least-squarefitting, the sum of the squares of the offsets is used instead of theabsolute values. The least-squares method finds its optimum when the sumof squared offsets is a minimum. Thus, effects of different sources oferror can be balanced in order to provide a best fit for the position ofthe person.

In FIG. 10 a schematic view of another example of indoor positiondetermination is illustrated. A person 2 carrying a system 1 inaccordance with certain embodiments of the present invention is about torun or walk along a track T within a building H1, for example a sportsstadium. The building H1 has an entrance Entr and an exit E1. Thesatellite positioning signals are lost between the entrance Entr of thebuilding H1 at point P1 and the exit E1 of the building H1 at point P2along the track T.

The position, direction, and velocity of the user 2 within the buildingH1 is determined by the processing unit in the system by computing aprimary position indication based on signals C1 from the satellitesystem to determine the position of the user at point P1 when enteringthe building H1.

Between points P1 and P2, the processing unit of system 21 recordsmovement data of the user using sensor signals from the accelerometer(s)in the system, and calculates the direction of movement of the user 2based on the sensor signals as described, for example, in connectionwith FIG. 1. The processing unit records direction data of the user 2 ina memory unit in order to determine the current direction of the user 2.It also computes the velocity of the user 2 in each direction anddetermines the time the person 2 has moved in any direction. Thedirection and velocity data is stored in the memory unit, in order totrack and store secondary position indications of the user 2 along thetrack T.

Within the building H1 the person 2 may run or walk a specific distancealong a 400 m lane, for instance. The position, velocity, and directionof the user 2 as well as the covered distance can be computed and/ormonitored within the building H1 by means of the system 1 in accordancewith some embodiments of the present invention. In particular, alsochanges in velocity and direction of the user can be calculated and/ormonitored. In other words, the system 1 is configured to calculate anyposition between the points P1 and P2. The calculation particularly alsoincludes changes in direction of a moving person 2. In the example ofFIG. 10, the person 2 moves along half of a round of the 400 m lanetowards point P2, then moves along half of a round of the 400 m lanetowards point P1, and subsequently moves again along half of a round ofthe 400 m lane towards point P2. Such changes in direction can becalculated by the system using the provided magnetometer data. Thus, anytrajectory of the person 2 between points P1 and P2, where an externalpositioning signal is not available or the quality is not sufficient,can be calculated and/or monitored by the system 1.

When leaving the building H1 via the exit E1 at point P2, the system 1may then offer the second position of the user 2 at point P2, based onthe secondary position indication at that point. At point P2, satellitecoverage C2 is again provided, and the position of the user becomesupdated with a new primary position indication at point P2 based onsignals C2 from the satellite system. Thus, it is possible to calculateand/or monitor the position, velocity, and direction of the person 2within the building H1 between points P1 and P2.

In FIG. 11 an example of a system in accordance with at least someembodiments of the present invention is illustrated. Illustrated issystem 600, which may comprise, for example, a readout system or anintegrated system comprising readout and analytics functions. Comprisedin system 600 is processor 610, which may comprise, for example, asingle- or multi-core processor wherein a single-core processorcomprises one processing core and a multi-core processor comprises morethan one processing core. Processor 610 may comprise more than oneprocessor. A processing core may comprise, for example, a Cortex-A8processing core manufactured by ARM Holdings or a Steamroller processingcore produced by Advanced Micro Devices Corporation. Processor 610 maycomprise at least one Qualcomm Snapdragon and/or Intel Atom processor.Processor 610 may comprise at least one application-specific integratedcircuit, ASIC. Processor 610 may comprise at least onefield-programmable gate array, FPGA. Processor 610 may be means forperforming method steps in system 600. Processor 610 may be configured,at least in part by computer instructions, to perform actions.

The system 600 may comprise memory 620. Memory 620 may compriserandom-access memory and/or permanent memory. Memory 620 may comprise atleast one RAM chip. Memory 620 may comprise solid-state, magnetic,optical and/or holographic memory, for example. Memory 620 may be atleast in part accessible to processor 610. Memory 620 may be at least inpart comprised in processor 610. Memory 620 may be means for storinginformation. Memory 620 may comprise computer instructions thatprocessor 610 is configured to execute. When computer instructionsconfigured to cause processor 610 to perform certain actions are storedin memory 620, and system 600 overall is configured to run under thedirection of processor 610 using computer instructions from memory 620,processor 610 and/or its at least one processing core may be consideredto be configured to perform said certain actions. Memory 620 may be atleast in part external to system 600 but accessible to system 600.

System 600 may comprise a transmitter 630. System 600 may comprise areceiver 640. Transmitter 630 and receiver 640 may be configured totransmit and receive, respectively, information in accordance with atleast one communication standard. Transmitter 630 may comprise more thanone transmitter. Receiver 640 may comprise more than one receiver.Transmitter 630 and/or receiver 640 may be configured to operate inaccordance with global system for mobile communication, GSM, widebandcode division multiple access, WCDMA, 5G, long term evolution, LTE,IS-95, wireless local area network, WLAN, Ethernet and/or worldwideinteroperability for microwave access, WiMAX, standards, for example.Receiver 640 is configured to receive signals from an externalpositioning system, for example a GPS satellite signal. System 600 maycomprise a single receiver 640 or a plurality of different receivers640.

System 600 may comprise a readout circuitry 650. System 600 may compriseuser interface, UI, 660. UI 660 may comprise at least one of a display,a keyboard, a button, a touchscreen, a vibrator arranged to signal to auser by causing system 600 to vibrate, a speaker and a microphone. Auser may be able to operate system 600 via UI 660, for example to startand stop monitoring of position data.

Processor 610 may be furnished with a transmitter arranged to outputinformation from processor 610, via electrical leads internal to system600, to other systems comprised in system 600. Such a transmitter maycomprise a serial bus transmitter arranged to, for example, outputinformation via at least one electrical lead to memory 620 for storagetherein. Alternatively to a serial bus, the transmitter may comprise aparallel bus transmitter. Likewise processor 610 may comprise a receiverarranged to receive information in processor 610, via electrical leadsinternal to system 600, from other systems comprised in system 600. Sucha receiver may comprise a serial bus receiver arranged to, for example,receive information via at least one electrical lead from receiver 640for processing in processor 610. Alternatively to a serial bus, thereceiver may comprise a parallel bus receiver.

Processor 610, memory 620, transmitter 630, receiver 640, readoutcircuitry 650 and/or UI 660 may be interconnected by electrical leadsinternal to system 600 in a multitude of different ways. For example,each of the aforementioned systems may be separately connected to amaster bus internal to system 600, to allow for the systems to exchangeinformation. However, as the skilled person will appreciate, this isonly one example and depending on the embodiment various ways ofinterconnecting at least two of the aforementioned systems may beselected without departing from the scope of the present invention.

According to a certain embodiment, the system 600 further includes a x-,y-, z-accelerometer and a x-, y-, z-magnetometer. An air pressure sensormay be an additional optional feature. I.e., the system 600 comprisesdevices for measuring acceleration in three dimensions, for measuringdirection in three dimensions as well as for measuring air pressure. Adirection, a velocity, and a position of a user can be derived from themeasured data in connection with the primary position indication. Thesystem is further configured to record the time an object has moved inany direction by a timing function.

According to another certain embodiment, the system 600 further includesa x-, y-, z-accelerometer, a x-, y-, z-gyroscope, and a x-, y-,z-magnetometer as well as an air pressure sensor. The gyroscope can beadded to the system in order to mitigate the effect of magneticdisturbances and situations when the cyclic motion is disturbed, forexample when a person is waiving the hands. If the orientation is knownat the beginning, integrating gyroscope data can theoretically tell theorientation at any later point in time. Because of the sensor errors,gyroscope measurements need to be fused with other sensor measurements.The gyroscope adds extra error sources to the system. Gyroscope errorscan be estimated using the behaviour of the data. Integration of thegyroscope signal over selected subsequent cycles should be zero,assuming that the direction of movement has not changed. Thus, thedirection of movement can also be determined by using gyroscope data inaddition to accelerometer and magnetometer data. Furthermore, thegyroscope enables definition of a cycle in a different way. If a cycleis estimated from peaks in the accelerometer signal, there is somelatency, since the peak is not accepted instantly. However, zerocrossings of the gyroscope signal can be used to estimate the cycle togive the detection without latency. This means that there is no need tobuffer gyroscope data for integration. In the case of a wrist device, itis convenient to calculate the cycle from zero crossings of the functionƒ=ω_(y)−ω_(z),where w_(i) are gyroscope measurements and assuming that the x-directionis pointing to the direction of movement.

The system 600 may be, for example, a smartphone or a tablet computeraccording to some embodiments. According to other embodiments, thesystem may be a wristop computer. The above mentioned devices may be allcomprised in a single apparatus or separated from each other indifferent devices of a system. For example, an accelerometer, agyroscope, a magnetometer, an air pressure sensor, and a receiverconfigured to receive a signal from an external positioning system maybe comprised by a wristop computer. According to another certainembodiment, an accelerometer, a magnetometer, and an air pressure sensormay be comprised by a wristop computer. The receiver configured toreceive a signal from an external positioning system and the processor610 may be comprised by a separate computing device. The wristopcomputer and the computing device are then configured to transmit andreceive data via a personal area network. In other words, accelerationdata, direction data, and pressure data may be measured by the wristopcomputer and transmitted to the computing device. The externalpositioning signal may be additionally received by the computing device.The velocity of said moving object in said direction based on theaccelerometer sensor signals may then be computed by the computingdevice and the secondary position indication of said object may bedetermined by the computing device. Finally, the tracked secondarypositioning signal may then be displayed by the computing device.

System 600 may comprise a further device not illustrated in FIG. 11. Insome embodiments, system 600 lacks at least one device described above.

It is to be understood that the embodiments of the invention disclosedare not limited to the particular structures, process steps, ormaterials disclosed herein, but are extended to equivalents thereof aswould be recognized by those ordinarily skilled in the relevant arts. Itshould also be understood that terminology employed herein is used forthe purpose of describing particular embodiments only and is notintended to be limiting.

Reference throughout this specification to one embodiment or anembodiment means that a particular feature, structure, or characteristicdescribed in connection with the embodiment is included in at least oneembodiment of the present invention. Thus, appearances of the phrases“in one embodiment” or “in an embodiment” in various places throughoutthis specification are not necessarily all referring to the sameembodiment. Where reference is made to a numerical value using a termsuch as, for example, about or substantially, the exact numerical valueis also disclosed.

As used herein, a plurality of items, structural elements, compositionalelements, and/or materials may be presented in a common list forconvenience. However, these lists should be construed as though eachmember of the list is individually identified as a separate and uniquemember. Thus, no individual member of such list should be construed as ade facto equivalent of any other member of the same list solely based ontheir presentation in a common group without indications to thecontrary. In addition, various embodiments and example of the presentinvention may be referred to herein along with alternatives for thevarious components thereof. It is understood that such embodiments,examples, and alternatives are not to be construed as de factoequivalents of one another, but are to be considered as separate andautonomous representations of the present invention.

Furthermore, the described features, structures, or characteristics maybe combined in any suitable manner in one or more embodiments. In thefollowing description, numerous specific details are provided, such asexamples of lengths, widths, shapes, etc., to provide a thoroughunderstanding of embodiments of the invention. One skilled in therelevant art will recognize, however, that the invention can bepracticed without one or more of the specific details, or with othermethods, components, materials, etc. In other instances, well-knownstructures, materials, or operations are not shown or described indetail to avoid obscuring aspects of the invention.

While the forgoing examples are illustrative of the principles of thepresent invention in one or more particular applications, it will beapparent to those of ordinary skill in the art that numerousmodifications in form, usage and details of implementation can be madewithout the exercise of inventive faculty, and without departing fromthe principles and concepts of the invention. Accordingly, it is notintended that the invention be limited, except as by the claims setforth below.

The verbs “to comprise” and “to include” are used in this document asopen limitations that neither exclude nor require the existence of alsoun-recited features. The features recited in depending claims aremutually freely combinable unless otherwise explicitly stated.Furthermore, it is to be understood that the use of “a” or “an”, thatis, a singular form, throughout this document does not exclude aplurality.

INDUSTRIAL APPLICABILITY

At least some embodiments of the present invention find industrialapplication in determining a direction of movement of an object.

ACRONYMS LIST

-   GPS Global Positioning System-   GSM global system for mobile communication-   LTE long term evolution-   UI user interface-   WCDMA wideband code division multiple access-   WiMAX worldwide interoperability for microwave access-   WLAN wireless local area network

REFERENCE SIGNS LIST

-   1 system-   2 object-   3 first direction-   4 second direction-   5 third direction-   6 cyclical motion-   10 satellite-   12 magnetometer-   13 accelerometer-   14 signal-   600 system-   610 processor-   620 memory-   630 transmitter-   640 receiver-   650 readout circuitry-   660 user interface-   C1 satellite signal-   C2 satellite signal-   C3 satellite signal-   C4 satellite signal-   E1 first exit-   E2 second exit-   Entr entrance-   H1 building-   H2 building-   M1 mountain-   M2 mountain-   P1 first point-   P2 second point-   P3 third point-   P4 fourth point-   T track

CITATION LIST Patent Literature

-   GB 2497153

The invention claimed is:
 1. A method for determining a direction ofmovement of an object, the method comprising: determining a cyclicalmotion of a cyclically moving part of the object by recordingacceleration data of said cyclically moving part over a plurality ofcycles using an accelerometer or inertial sensor attached to saidcyclically moving part, determining a characteristic position of thecyclically moving part in subsequent cycles, integrating saidacceleration data over at least one cycle of movement to determine atilting of said cyclically moving part of the object relative to ahorizontal plane, measuring an external magnetic field of saidcyclically moving part of the object in said characteristic positionusing a magnetometer to determine an orientation of said cyclicallymoving part relative to the external magnetic field, determining thedirection of movement of the object based on the tilting and theorientation of said cyclically moving part of the object, wherein thedirection of movement of the object is determined based on a previouslydetermined direction of said object and measure geomagnetic orientationof the cyclically moving part of the object.
 2. The method according toclaim 1, wherein the previously determined direction of said movingobject is determined based on signals received from an externalpositioning system.
 3. The method according to claim 1, wherein: a firstdirection of a moving first part of the object is determined based onsignals received from an external positioning system, acceleration dataof a second part of the object is recorded, which second part iscyclically moving relative to the first part of the object, over aplurality of cycles using an accelerometer or inertial sensor attachedto the second part of the object, said acceleration data is integratedover at least one cycle of movement to determine a tilting of saidcyclically moving part of the object relative to a horizontal plane, acharacteristic position of the cyclically moving second part of theobject is determined in subsequent cycles, a geomagnetic firstorientation of the second part of the object is measured in saidcharacteristic position using a magnetometer, and a second direction ofmovement of the first part of the object is determined by measuring ageomagnetic second orientation of the second part of the object in saidcharacteristic position using a magnetometer, and wherein thedetermination is based on the tilting and the deviation between thegeomagnetic first orientation and the geomagnetic second orientation ofthe second part of the object.
 4. The method according to claim 3,wherein at least one of the first direction, the second direction, anacceleration, a velocity, and a position of the first part of the movingobject is tracked.
 5. The method according to claim 3, wherein at leastone of a first angle between the geomagnetic first orientation of thesecond part of the object and the first direction of the first part ofthe object and a second angle between the geomagnetic first orientationand the geomagnetic second orientation of the second part of the objectis determined.
 6. The method according to claim 5, wherein a third anglebetween the geomagnetic second orientation of the second part of theobject and the second direction of the first part of the object isidentical with the first angle.
 7. The method according to claim 1,wherein a position of the moving object is displayed on a display of asystem, transmitted from the system to another device, or shown on a mapwhich is available via internet.
 8. The method according to claim 7,wherein the position is determined in real time or at a later stage. 9.The method according to claim 1, wherein the characteristic position ofeach cycle is at a maximum or minimum acceleration value.
 10. The methodaccording to claim 1, wherein a track formed in a first coordinatesystem is aligned with a second coordinate system.
 11. A system fordetermining a direction of movement of an object, the system comprising:a receiver for receiving signals from an external positioning system, atleast one of an accelerometer or an inertial sensor, a magnetometer, atleast one memory unit, and a processing unit comprising at least oneprocessing core, at least one memory including computer program code,the at least one memory and the computer program code being configuredto, with the at least one processing core, cause the system at least to:determine a cyclical motion of a cyclically moving part of the object byrecording acceleration data of said cyclically moving part over aplurality of cycles using an accelerometer or inertial sensor attachedto said cyclically moving part, determine a characteristic position ofthe cyclically moving part in subsequent cycles, integrate saidacceleration data over at least one cycle of movement to determine atilting of said cyclically moving part of the object relative to ahorizontal plane, measure an external magnetic field of said cyclicallymoving part of the object in said characteristic position using amagnetometer to determine an orientation of said cyclically moving partof the object relative to the external magnetic field, and determine thedirection of movement of the object based on the tilting and theorientation of said cyclically moving part of the object, wherein thesystem is configured to determine the direction of movement of theobject based on a previously determined direction of said object and ameasured geomagnetic orientation of the cyclically moving part of theobject.
 12. The system according to claim 11, wherein the system isconfigured to determine the previously determined direction of saidmoving object based on signals received from an external positioningsystem.
 13. The system according to claim 11, wherein the processingunit comprising the at least one processing core, the at least onememory including computer program code, the at least one memory and thecomputer program code is further configured to, with the at least oneprocessing core, cause the system at least to: determine a firstdirection of a moving first part of the object based on signals receivedfrom an external positioning system, record acceleration data of asecond part of the object, which second part is cyclically movingrelative to the first part of the object, over a plurality of cyclesusing an accelerometer or inertial sensor attached to the second part ofthe object, integrate said acceleration data over at least one cycle ofmovement to determine the tilting of said cyclically moving part of theobject relative to the horizontal plane, determine a characteristicposition in subsequent cycles, measure a geomagnetic first orientationof the second part of the object in a characteristic position ofsubsequent cycles using a magnetometer, measure a geomagnetic secondorientation of the second part of the object in the characteristicposition of each cycle using the magnetometer, and determine a seconddirection of the first part of the moving object based on the tiltingand a deviation between the geomagnetic first orientation and thegeomagnetic second orientation of the second part of the object.
 14. Thesystem according to claim 13, wherein the processing unit iscontinuously computing and storing at least one of the first direction,the second direction, an acceleration, a velocity, and a position of thefirst part of the moving object.
 15. The system according to claim 13,wherein the system is configured to determine the first direction of thefirst part of the object based on GPS signals between two separatepoints of time.
 16. The system according to claim 13, wherein the systemis configured to track at least one of the first direction, the seconddirection, an acceleration, a velocity and a position of the first partof the moving object.
 17. The system according to claim 13, wherein thesystem is configured to determine at least one of a first angle betweenthe geomagnetic first orientation of the second part of the object andthe first direction of the first part of the object and a second anglebetween the geomagnetic first orientation and the geomagnetic secondorientation of the second part of the object.
 18. The system accordingto claim 11, wherein the system is configured to display a position ofthe moving object on a display of the system, to transmit the positionof the moving object from the system to another device, or to show theposition of the moving object on a map which is available via internet.19. The system according to claim 18, wherein the system is configuredto determine the position in real time or at a later stage.
 20. Thesystem according to claim 11, wherein the system further comprises agyroscope.
 21. The system according to claim 11, wherein the system isconfigured to align a track formed in a first coordinate system with asecond coordinate system.
 22. A non-transitory computer readable mediumhaving stored thereon a set of computer readable instructions that, whenexecuted by at least one processor, cause an apparatus to at least to:determine a cyclical motion of a cyclically moving part of the object byrecording acceleration data of said cyclically moving part over aplurality of cycles using an accelerometer or inertial sensor attachedto said cyclically moving part, determine a characteristic position ofthe cyclically moving part in subsequent cycles, integrate saidacceleration data over at least one cycle of movement to determine atilting of said cyclically moving part of the object relative to thehorizontal plane, measure an external magnetic field of said cyclicallymoving part of the object in said characteristic position using amagnetometer to determine an orientation of said cyclically moving partof the object relative to the external magnetic field, and determine thedirection of movement of the object based on the tilting and theorientation of the cyclically moving part of the object, wherein thedirection of movement of the object is determined based on a previouslydetermined direction of said object and a measured geomagneticorientation of the cyclically moving part of the object.